/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */
package com.aliyuncs.ocs.model.v20150301;

import java.util.List;
import com.aliyuncs.AcsResponse;
import com.aliyuncs.ocs.transform.v20150301.DescribeRegionsResponseUnmarshaller;
import com.aliyuncs.transform.UnmarshallerContext;

/**
 * @author auto create
 * @version 
 */
public class DescribeRegionsResponse extends AcsResponse {

	private String requestId;

	private GetDescribeRegionsResponse getDescribeRegionsResponse;

	public String getRequestId() {
		return this.requestId;
	}

	public void setRequestId(String requestId) {
		this.requestId = requestId;
	}

	public GetDescribeRegionsResponse getGetDescribeRegionsResponse() {
		return this.getDescribeRegionsResponse;
	}

	public void setGetDescribeRegionsResponse(GetDescribeRegionsResponse getDescribeRegionsResponse) {
		this.getDescribeRegionsResponse = getDescribeRegionsResponse;
	}

	public static class GetDescribeRegionsResponse {

		private Integer total;

		private Integer pageNo;

		private Integer pageSize;

		private List<Region> regions;

		public Integer getTotal() {
			return this.total;
		}

		public void setTotal(Integer total) {
			this.total = total;
		}

		public Integer getPageNo() {
			return this.pageNo;
		}

		public void setPageNo(Integer pageNo) {
			this.pageNo = pageNo;
		}

		public Integer getPageSize() {
			return this.pageSize;
		}

		public void setPageSize(Integer pageSize) {
			this.pageSize = pageSize;
		}

		public List<Region> getRegions() {
			return this.regions;
		}

		public void setRegions(List<Region> regions) {
			this.regions = regions;
		}

		public static class Region {

			private String regionId;

			private String izNumber;

			private String localName;

			public String getRegionId() {
				return this.regionId;
			}

			public void setRegionId(String regionId) {
				this.regionId = regionId;
			}

			public String getIzNumber() {
				return this.izNumber;
			}

			public void setIzNumber(String izNumber) {
				this.izNumber = izNumber;
			}

			public String getLocalName() {
				return this.localName;
			}

			public void setLocalName(String localName) {
				this.localName = localName;
			}
		}
	}

	@Override
	public DescribeRegionsResponse getInstance(UnmarshallerContext context) {
		return	DescribeRegionsResponseUnmarshaller.unmarshall(this, context);
	}
}
